#!/bin/bash
# 定义用于同步的用户名
MASTER_SYNC_USER=${MASTER_SYNC_USER:-sync_master}
# 定义用于同步的密码
MASTER_SYNC_PASSWORD=${MASTER_SYNC_PASSWORD:-joyfun666}
# 定义用于登录mysql是用户名
ADMIN_USER=${ADMIN_USER:-root}
# 定义用于登录mysql是密码
ADMIN_PASSWORD=${ADMIN_PASSWORD:-root}
# 定义运行登录的HOST地址
ALLOW_HOST=${ALLOW_HOST:-%}
# 定义创建账号的sql语句
CREATE_USER_SQL="CREATE USER '${MASTER_SYNC_USER}'@'${ALLOW_HOST}' IDENTIFIED WITH mysql_native_password BY '${MASTER_SYNC_PASSWORD}';"
# 定义授权账号的sql语句 建设两个权限 REPLICATION SLAVE 属于从节点副本的权限 REPLICATION CLIENT 是副本客户端权限 可以执行show master status语句
GRANT_USER_SQL="GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO '${MASTER_SYNC_USER}'@'${ALLOW_HOST}';"
# 定义刷新权限的sql语句
FLUSH_PRIVILEGES_SQL="FLUSH PRIVILEGES;"

# 执行sql
mysql -u${ADMIN_USER} -p${ADMIN_PASSWORD} -e "${CREATE_USER_SQL} ${GRANT_USER_SQL} ${FLUSH_PRIVILEGES_SQL}"